import request from '@/config/axios'

// erp系统 公司 VO
export interface CompanyVO {
  id: number // 公司编号
  name: string // 客户名称
  contact: string // 联系人
  mobile: string // 手机号码
  telephone: string // 联系电话
  email: string // 电子邮箱
  remark: string // 备注
  status: number // 开启状态
  sort: number // 排序
  taxNo: string // 纳税人识别号
  taxPercent: number // 税率
  bankName: string // 开户行
  bankAccount: string // 开户账号
  bankAddress: string // 开户地址
  cooperationDegree: boolean // 合作等级
  belongProvince: string // 归属省份
  belongCity: string // 归属城市
  belongDistrict: string // 归属区
  belongAddress: string // 归属地址
  longitude: string // 公司经度
  latitude: string // 公司纬度
  settleType: boolean // 结算类型
  hasInvoice: boolean // 是否开票
  invoiceType: boolean // 开票类型
}

// erp系统 公司 API
export const CompanyApi = {
  // erp系统 公司分页
  getCompanyPage: async (params: any) => {
    return await request.get({ url: `/erp/company/page`, params })
  },

  getCompanySimpleList: async () => {
    return await request.get({ url: `/erp/company/simple-list` })
  },

  // erp系统 公司详情
  getCompany: async (id: number) => {
    return await request.get({ url: `/erp/company/get?id=` + id })
  },

  // 新增erp系统 公司
  createCompany: async (data: CompanyVO) => {
    return await request.post({ url: `/erp/company/create`, data })
  },

  // 修改erp系统 公司
  updateCompany: async (data: CompanyVO) => {
    return await request.put({ url: `/erp/company/update`, data })
  },

  // 更新公司审核状态
  updateCompanyCheckState: async (id: number, checkState: number) => {
    return await request.put({
      url: `/erp/company/update-check`,
      params: {
        id,
        checkState
      }
    })
  },
  // 更新公司是否为默认选项
  updateCompanyDefault: async (id: number, isDefault: number) => {
    return await request.put({
      url: `/erp/company/update-default`,
      params: {
        id,
        isDefault
      }
    })
  },

  // 删除erp系统 公司
  deleteCompany: async (id: number) => {
    return await request.delete({ url: `/erp/company/delete?id=` + id })
  },

  // 导出erp系统 公司 Excel
  exportCompany: async (params) => {
    return await request.download({ url: `/erp/company/export-excel`, params })
  },
}
